package org.nepu.srr.设备设施本体风险.直观检查.钻井绞车;

import lombok.Data;
import org.nepu.sc.domain.CommonIn;
import org.nepu.sc.domain.CommonMethods;
import org.nepu.sc.domain.DataVO;

import javax.persistence.Convert;

@Data
public class B23fDrillingParams {
    //铭牌、使用、维护记录和合格证	□完整            □不全
    DataVO estimate1;

    //钻井绞车及底座的外观状况	□有损伤          □有锈蚀□其它            □正常
    DataVO estimate2;

    //电气设备的正压防爆警报装置工作状况	□正常            □不正常
    DataVO estimate3;

    //各种指示灯及仪表是否正常	□正常            □不正常
    DataVO estimate4;

    //各类警报装置是否正常	□正常            □不正常
    DataVO estimate5;

    //滚筒绳槽及钻井大绳磨损是否符合要求	□符合            □不符合
    DataVO estimate6;

    //排绳器的安装及工作状况是否符合要求	□符合            □不符合
    DataVO estimate7;

    //润滑油油质及油位状况	□正常            □不正常□油位低
    DataVO estimate8;

    //易损件储存状况	□有              □无
    DataVO estimate9;

    //绞车是否都有辅助刹车系统	□有              □无
    DataVO estimate10;

    //刹车系统制动情况是否符合要求	□符合            □不符合
    DataVO estimate11;

    //换档装置运行情况是否符合要求	□符合            □不符合
    DataVO estimate12;

    //变档机构挂合是否灵活	□是              □否
    DataVO estimate13;

    //气控系统运行情况是否符合要求	□符合            □不符合
    DataVO estimate14;

    //启动绞车以检查是否漏油	□有泄漏          □无泄漏
    DataVO estimate15;

    //电机与绞车输入轴连接是否可靠	□可靠            □不可靠
    DataVO estimate16;

    //检查所有运动部位的保护罩是否完好	□是              □否
    DataVO estimate17;

    //检查绞车的盖板、铺板和防护板是否齐全	□齐全            ☑有缺失
    DataVO estimate18;

    //检查绞车盖板、铺板和防护板的锈蚀情况	□完好            □轻微□严重
    DataVO estimate19;

    //检查油压是否正确	□正常            □过低□过高
    DataVO estimate20;

    //检查所有黄油嘴工作状况	□流畅            □堵塞
    DataVO estimate21;

    //绞车底壳是否漏油	□有              □无
    DataVO estimate22;

    //是否安装天车防碰装置，天车防碰装置是否有损坏或磨损部件	□已安装          □未安装□有损坏          □无损坏
    CommonIn estimate23;

    //绞车底部水平梁弯曲变形情况 	□正常            □弯曲
    DataVO estimate24;

    //井架起升后，当游吊系统悬吊的吊卡坐在转盘上时，滚筒上的缠绳不应少于12圈	□符合            □不符合
    DataVO estimate25;

    //检查绞车的所有电机和电缆	□完好            □有缺陷
    DataVO estimate26;

    //检查绞车冷却系统	□完好            □有缺陷
    DataVO estimate27;

    //绞车整体固定是否符合要求	□符合            □不符合
    DataVO estimate28;

    //执行盘刹系统外观检验	□完好            □有缺陷
    DataVO estimate29;

    //液压源、操作柜和控制柜内的管路系统无泄漏	□有泄漏          □无泄漏
    DataVO estimate30;

    //刹车钳的连接销轴、弹簧卡销、回位弹簧是否连接正确	□正确            □不正确
    DataVO estimate31;

    //安装工作钳时，刹车块与刹车盘的间隙应不大于1mm	□符合            □不符合
    DataVO estimate32;

    //安装安全钳时，刹车块和刹车盘的间隙不大于0.5mm	□符合            □不符合
    DataVO estimate33;

    //刹车盘的工作表面对滚筒轴轴线的全跳动公差应不大于0.3mm	□符合            □不符合
    DataVO estimate34;

    //钳架的内圆弧面与刹车盘的外圆弧面应同轴，两圆弧的间隙应为4-6mm	□符合            □不符合
    DataVO estimate35;

    //刹车盘和刹车块磨损量是否达到极限值：刹车盘的单边磨损量大于5mm应被更换；刹车块的厚度小于12mm应被更换	□是              □否
    DataVO estimate36;

    //液压油的温度不超过93°C	□超温            □未超温
    DataVO estimate37;

    //仪表安装是否准确到位	□到位            □不到位
    DataVO estimate38;

    //所有压力表的功能是否正常	□是              □否
    DataVO estimate39;

    //死绳固定器安装是否牢固	□牢固            □松动
    DataVO estimate40;

    //死绳固定器外观有无明显的锈蚀、变形和损伤	□无明显的锈蚀、变形和损伤□有锈蚀□有变形          □有损伤
    DataVO estimate41;

    //死绳固定压板的螺栓、螺母和备帽应安装到位，不松动	□到位            □未到位□牢固            □松动
    CommonIn estimate42;

    //压板是否过度磨损	□是              □否
    DataVO estimate43;

    //死绳固定器传感器上是否有碎石、泥浆和其它污物	□有              □无
    DataVO estimate44;

    //传压包安装应牢靠，螺栓无松动并配备防松装置，受压间隙应均匀	□符合            □不符合
    DataVO estimate45;

    //检查液压传感器定位销及开口销的情况	□完好            □有缺陷
    DataVO estimate46;

    //检查液压管线及其接头的情况	□完好            □有缺陷□有渗漏          □无渗漏
    CommonIn estimate47;

    //检查死绳固定器轴承的润滑情况	□正常            □有缺陷
    DataVO estimate48;

    //死绳是否与井架或其他物件干涉	□是              □否
    DataVO estimate49;

    public B23fDrillingResult rate(){
        double fullScore = 305;
        double score = 0;
        if (estimate1.getData().equals("合格")) {
            score += 5;
        }
        if (estimate2.getData().equals("合格")) {
            score += 5;
        }
        if (estimate3.getData().equals("合格")) {
            score += 5;
        }
        if (estimate4.getData().equals("合格")) {
            score += 5;
        }
        if (estimate5.getData().equals("合格")) {
            score += 5;
        }
        if (estimate6.getData().equals("合格")) {
            score += 10;
        }
        if (estimate7.getData().equals("合格")) {
            score += 10;
        }
        if (estimate8.getData().equals("合格")) {
            score += 5;
        }
        if (estimate9.getData().equals("合格")) {
            score += 5;
        }
        if (estimate10.getData().equals("合格")) {
            score += 10;
        }
        if (estimate11.getData().equals("合格")) {
            score += 5;
        }
        if (estimate12.getData().equals("合格")) {
            score += 5;
        }
        if (estimate13.getData().equals("合格")) {
            score += 5;
        }
        if (estimate14.getData().equals("合格")) {
            score += 5;
        }
        if (estimate15.getData().equals("合格")) {
            score += 5;
        }
        if (estimate16.getData().equals("合格")) {
            score += 5;
        }
        if (estimate17.getData().equals("合格")) {
            score += 5;
        }
        if (estimate18.getData().equals("合格")) {
            score += 5;
        }
        if (estimate19.getData().equals("合格")) {
            score += 5;
        }
        if (estimate20.getData().equals("合格")) {
            score += 5;
        }
        if (estimate21.getData().equals("合格")) {
            score += 5;
        }
        if (estimate22.getData().equals("合格")) {
            score += 5;
        }
        if (CommonMethods.isAllTrue(estimate23.getInput())) {
            score += 10;
        }
        if (estimate24.getData().equals("合格")) {
            score += 10;
        }
        if (estimate25.getData().equals("合格")) {
            score += 10;
        }
        if (estimate26.getData().equals("合格")) {
            score += 5;
        }
        if (estimate27.getData().equals("合格")) {
            score += 5;
        }
        if (estimate28.getData().equals("合格")) {
            score += 5;
        }
        if (estimate29.getData().equals("合格")) {
            score += 5;
        }
        if (estimate30.getData().equals("合格")) {
            score += 5;
        }
        if (estimate31.getData().equals("合格")) {
            score += 5;
        }
        if (estimate32.getData().equals("合格")) {
            score += 5;
        }
        if (estimate33.getData().equals("合格")) {
            score += 5;
        }
        if (estimate34.getData().equals("合格")) {
            score += 5;
        }
        if (estimate35.getData().equals("合格")) {
            score += 5;
        }
        if (estimate36.getData().equals("合格")) {
            score += 10;
        }
        if (estimate37.getData().equals("合格")) {
            score += 10;
        }
        if (estimate38.getData().equals("合格")) {
            score += 5;
        }
        if (estimate39.getData().equals("合格")) {
            score += 5;
        }
        if (estimate40.getData().equals("合格")) {
            score += 5;
        }
        if (estimate41.getData().equals("合格")) {
            score += 10;
        }
        if (CommonMethods.isAllTrue(estimate42.getInput())) {
            score += 10;
        }
        if (estimate43.getData().equals("合格")) {
            score += 10;
        }
        if (estimate44.getData().equals("合格")) {
            score += 5;
        }
        if (estimate45.getData().equals("合格")) {
            score += 5;
        }
        if (estimate46.getData().equals("合格")) {
            score += 5;
        }
        if (CommonMethods.isAllTrue(estimate47.getInput())) {
            score += 5;
        }
        if (estimate48.getData().equals("合格")) {
            score += 5;
        }
        if (estimate49.getData().equals("合格")) {
            score += 10;
        }
        double rate = score / fullScore;
        B23fDrillingResult result = new B23fDrillingResult();
        result.setRateScore(rate);
        String s = CommonMethods.toGrade(rate);
        result.setRateResult(s);
        return result;
    }
}
